#!/usr/bin/env python
# -*- coding:utf-8 -*-
# 用这个代码导入需要的库    pip install DrissionPage tabulate  DataRecorder  progress
# 代码版本低于4.0.0，请升级DP库，至少要4.0.0以上    pip install DrissionPage --upgrade

# 原DP库 使用文档地址 http://g1879.gitee.io/drissionpagedocs/whatsnew/4_0/
# 骚神库网址 https://gitee.com/haiyang0726/SaossionPage

# 导入必要的库
from SaossionPage import *
from progress.bar import Bar
import sys
import time

# 初始化 彩色字体
init()

if __name__ == "__main__":
    # 连接浏览器
    browser = Browser(Config.browser_path, config='忽略证书错误  无头 ')

    # 从命令行获取参数作为搜索关键词
    kw = sys.argv[1] if len(sys.argv) > 1 else '青花周传雄'  # 获取搜索关键词，默认为 'rar'

    url = fr'https://music.96flw.com/?name={kw}&type=netease'

    browser.open(url)
    
    tab = browser.page.get_tab(0)
    
    # tab.actions.wait(2)

    # 显示搜索进度条
    with Bar('歌曲搜索中...', max=20) as bar:
        for _ in range(20):
            time.sleep(0.1)  # 模拟任务
            bar.next()

    # 获取搜索结果信息
    try:

        info = tab.eles('.aplayer-list-light')
        txt=[]
        for i in info:
            print(i.text)
            txt.append(i.text)
        
        
        print('搜索到下面的歌曲：')
        print(f'\n {Fore.GREEN}{txt[0]}{Fore.RESET}  \n')
        lyr=tab.ele('.aplayer-lrc-contents').text

        lyr=str(Fore.RED+lyr).split('\n')
        for  i in  range(len(lyr)):
            print(lyr[i])
            if i==6:
                print('.....')
                print('\n'*2)
                break
        

        # 确认是否下载
        if input(Fore.RESET+'是否下载该歌曲？[y/n]') in ['y', '1', 'Y', '是']:
            tab.set.download_path('.')
            tab.set.download_file_name(txt[0])
            mp3=tab('#j-src-btn')

            tab.download(mp3.link,rename=txt[0]+'.mp3')
    except:
        print('歌曲下载失败....')

        
